package com.ruoyi.lifecycle.domain.bo;

import com.alibaba.excel.annotation.ExcelProperty;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.math.BigDecimal;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 基金信息业务对象
 *
 * @author chq
 * @date 2025-06-06
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class TFundBo extends BaseEntity {

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = { EditGroup.class })
    private String id;

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fundcode;

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fundname;

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fundengname;

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fundenglishname;

    /**
     * 0:股票基金;1:货币基金;3:债券基金;4:指数基金;8:FOF基金;9:混合基金;C:同业存单基金;
     */
    @NotBlank(message = "0:股票基金;1:货币基金;3:债券基金;4:指数基金;8:FOF基金;9:混合基金;C:同业存单基金;不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fundtype;

    /**
     * 这个参考网站枚举。R1:;R2:100;R3:125
     */
    @NotBlank(message = "这个参考网站枚举。R1:;R2:100;R3:125不能为空", groups = { AddGroup.class, EditGroup.class })
    private String risklevel;

    /**
     * 0:公募产品;1:专户产品
     */
    @NotBlank(message = "0:公募产品;1:专户产品不能为空", groups = { AddGroup.class, EditGroup.class })
    private String feetixtype;

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String classfund;

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pfundcode;

    /**
     *
     */
    @NotNull(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal subamountlast;

    @NotNull(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fundstatus;

    @NotNull(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fundintenddate;

}
